TDGEN, the test data generator that is part of TestWorks' fully integrated STW/Advisor suite of static analysis tools, provides the capability to take an existing test script and substitute new data values to create additional tests, increasing the size of a test suite with minimal work in order to more fully exercise the program-under-test.

TDGEN produces an input test data file based on the following user created files: o A template file describes how selected test data values are to be placed in a typical test file through data descriptors. This file provides an outline of the eventual output file. o A values file indicates the actual test values, test value ranges or test value generation rules for each data descriptor.

According to user specification, such as sequential or random genera- tion, TDGEN replaces the template file's data descriptors with the value file's actual values. The descriptors in the template file are denoted by a special syntax; all other text, except for comments, is reproduced verbatim.

TDGEN behaves as an intelligent macro processor. The user either creates new test data files or configures existing test scripts to substitute different data items for selected fields. With TDGEN, tens or hundreds of additional tests can be created in a short amount of time.

A Template File describes how selected test data values are to be placed in a typical test file. A Values File indicates the actual input test values, test value ranges or test value generation rules for data descriptors that appear in the template file.

TDGEN processes the values file by constructing a data table with field names as keys, then scans the template file for special syntax with identifier field names, and finally substitutes values from the data table associated with corresponding field names.

The types of values available include: enumerated values with no size restrictions; expanded values that include the first and last number in a sequence and are automatically expanded; and built-in values that can be integers, ASCII and real (floating) numbers.

Values are generated in four ways: Summary Mode, which calculates the total number of combinations possible with all fields in a given specification; Random Mode, which selects field values at random; Sequential Mode, which selects field values sequentially; and Specific Mode, in which the user indicates a specific order of data to be generated with choices of location-specific data, uniformly distributed data, or value-factored data.

The test data file can be customized with variable width, fixed width, left-adjusted or right-adjusted.

TDGEN is language-independent, and can be used with Graphical User Interfaces (GUI), command line, and menu-driven programs. It is available on single-user, multi-user, and site license basis.